package com.laicunba.service.analysis;

import java.math.BigDecimal;
import java.util.Date;

/**
 * 系统对账工具
 * 
 * @author why
 *
 */
public interface AccountBalanceAnalysisService {
	/**
	 * <h1>计算平台对所有用户的整体债务</h1> <br>
	 * <ul>
	 * <h4>不包含</h4>
	 * <li>用户未到期的收益</li>
	 * <li>已兑付的本金或收益</li>
	 * </ul>
	 * <ul>
	 * <h4>包含</h4>
	 * <li>用户自己的投入(银行卡支付)</li>
	 * <li>现金券</li>
	 * <li>定转活收益</li>
	 * <li>活转定收益</li>
	 * <li>收益节余部分</li>
	 * <li>取现但未打款部分</li>
	 * <li>Disable 账户的权益</li>
	 * </ul>
	 * 
	 * @return
	 */
	BigDecimal countDebt();

	/**
	 * <h1>计算活动费用</h1><br/>
	 * <h4>包含</h4> <li>现金券</li> </ul>
	 * 
	 * @param beginDate
	 * @param endDate
	 * @return
	 */
	BigDecimal countActivityCost(Date beginDate, Date endDate);

	BigDecimal countAllRemainProfit();

}
